package com.edu.controller;

import com.edu.entity.User;
import com.edu.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

import java.util.List;

/**
 * @ProjectName: springboot-project36
 * @Titile: UserController
 * @Author: Administrator
 * @Description: 用户控制类
 */
@Controller //控制类注解，就可以跟页面进行交互，
// @Controller 默认返回的是视图名称
@RequestMapping("/user") //路径映射注解
// 目的是为了把路径暴露出去，让别人访问。
//这里是一级目录
public class UserController {
    //控制层需要去调用业务层，所以需要注入业务层对象
    @Autowired
    private UserService userService;

    @RequestMapping("/list") //路径映射主机额，二级路径,
    // 外部要通过/user/list就可以访问这个方法
    public String getAll(Model model){ //注入model的目的是为了装数据，页面可以拿数据
        //获取数据
        List<User> userList = userService.findAll();
        //使用model装数据，便于页面可以获取数据展示
        model.addAttribute("users", userList); //key:users在页面上要用
        //数据已经装在model容器中，那么在哪里显示呢？
        return "list";//视图名称。结合配置，就会生成一个页面的地址：/templates/list.html
    }

}
